package com.zzuli.yxypre.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.zzuli.yxypre.entity.Album;
import com.zzuli.yxypre.entity.Sheet;
import com.zzuli.yxypre.entity.Singer;
import com.zzuli.yxypre.entity.Song;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @auther pony
 * @create 2023-04-29 9:56
 */
@Mapper
public interface SongMapper extends BaseMapper<Song> {
    /**
     * 根据歌曲 id 查询 状态正常的 歌手信息
     * @param songId 歌曲 id
     * @return
     */
    List<Singer> selectSingerBySongId(Integer songId);

    /**
     * 根据歌曲 id 查询 状态正常的 专辑信息
     * @param songId 歌曲 id
     * @return
     */
    List<Album> selectAlbumBySongId(Integer songId);

    /**
     * 根据歌曲id，查找标签不为 null 的歌单
     * @param songId
     * @return
     */
    List<Sheet> selectSheetBySongId(@Param("songId") Integer songId);
}
